package pers.bbw.crr.entity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import pers.bbw.crr.entity.base.BaseEntity;

/**
 * 用户信息实体类 用户
 *
 * @author bbw
 * @date 2024-12-13
 */
@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "用户信息实体类")
public class User extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @ApiModelProperty(value = "用户id")
    private Integer id;

    /**
     * 用户名
     */
    @ApiModelProperty(value = "用户名")
    private String username;

    /**
     * 密码
     */
    @ApiModelProperty(value = "密码")
    private String password;

    /**
     * 用户状态
     */
    @ApiModelProperty(value = "用户状态(0.正常；1.已封号)")
    private Integer state;

    /**
     * 真实姓名
     */
    @ApiModelProperty(value = "真实姓名")
    private String realName;

    /**
     * 昵称
     */
    @ApiModelProperty(value = "昵称")
    private String nickName;

    /**
     * 角色
     */
    @ApiModelProperty(value = "角色（1.管理员；2.社团管理员；3.普通用户）")
    private Integer roleCode;

    /**
     * 电话
     */
    @ApiModelProperty(value = "电话")
    private String telephone;

    /**
     * 邮箱
     */
    @ApiModelProperty(value = "邮箱")
    private String email;

    /**
     * 用户头像路径
     */
    @ApiModelProperty(value = "用户头像路径")
    private String fileUrl;

    /**
     * 用户获赞数
     */
    @ApiModelProperty(value = "用户获赞数")
    private long likedQuantity;

    /**
     * 用户点赞数
     */
    @ApiModelProperty(value = "用户点赞数")
    private long likeQuantity;

    /**
     * 用户收藏数
     */
    @ApiModelProperty(value = "用户收藏数")
    private long collectQuantity;

    /**
     * 最近浏览数
     */
    @ApiModelProperty(value = "最近浏览数")
    private long viewQuantity;

    /**
     * 最近浏览数
     */
    @ApiModelProperty(value = "被点赞数")
    private long likedCount;

}
